# -*- coding: cp1252 -*-
from _ConexaoDb import *

    
# -------------- ESTOQUE -------------- #


class Estoque:

    # attributes --

    def __init__(self, idestoque, idprodutoest, idcompra, precoCompra, lote, quantidade):
        self.__idestoque = idestoque
        self.__idprodutoest = idprodutoest
        self.__idcompra = idecompra
        self.__lote = lote
        self.__quantidade = quantidade
        self.__precoCompra = precoCompra


    # db commands --

    def Cadastra(self):
        conndb = ConnectDB()
        cmd = '''
        INSERT INTO `controledb`.`estoque` (`idprodutoest`, `idcompra`, `precoCompra`, `lote`, `quantidade`)
        VALUES ('%s', '%s', '%s', '%s', '%s');
        ''' %(self.__idprodutoest, self.__idcompra, self.__precoCompra, self.__lote, self.__quantidade)

        confirm = conndb.Comando(cmd)
        return confirm

    def Altera(self):
        conndb = ConnectDB()
        cmd = '''
        UPDATE `controledb`.`estoque` SET `idprodutoest`= '%s', `idcompra`= '%s', `precoCompra`= '%s', `lote`= '%s', `quantidade`= '%s'
        WHERE `idestoque`= '%s';
        '''%self.__descricao, self.__idGrupo, self.__precoVenda, self.__email, self.__obs, self.__codigo, self.__idestoque)
        confirm = conndb.Comando(cmd)
        return confirm

    def Exclui(self):
        conndb = ConnectDB()
        cmd = '''
        DELETE FROM `controledb`.`estoque` WHERE `idestoque`= '%s';
        '''%(self.__idestoque)
        confirm = conndb.Comando(cmd)
        return confirm

    def lotesProd(self):
        conndb = ConnectDB()
        cmd = '''
        SELECT lote, precoCompra, quantidade 
        FROM estoque
        WHERE idprodutoest = %s
        ORDER BY lote;
        '''%(self.__idprodutoest)
        lotes = conndb.ComandoRetorno(cmd)
        return lotes
        
        
        

    # methods --

    def GetIdEstoque(self):
        return self.__idestoque
    def SetIdEstoque(self, idestoque):
        self.__idestoque = idestoque


    def GetQuantidade(self):
        return self.__quantidade
    def SetQuantidade(self, quantidade):
        self.__quantidade = quantidade


    def GetPrecoCompra(self):
        return self.__precoCompra
    def SetPrecoCompra(self, precoCompra):
        self.__precoCompra = precoCompra
        
